#pragma once
#include "scene_base.h"

// 绕静态障碍物
class ObsPassStatic : public SceneBase {
  public:
    ObsPassStatic();
    void ShowScene(); // 显示函数，重写基类虚函数
    bool Planning_process() override; // 主函数，重写基类纯虚函数
  
  public:
    std::unique_ptr<Cone> cone;
    double start_dis = 200.0; // 开始绕障的距离
};

// 超车
class ObsPassOvertake : public SceneBase {
  public:
    ObsPassOvertake();
    void ShowScene();
    bool Planning_process() override;
  
  public:
    std::unique_ptr<CarNormal> obs_car;
    double start_dis = 0.0; // 开始绕的距离
};

// 会车
class ObsPassMeeting : public SceneBase {
  public:
  ObsPassMeeting();
    void ShowScene();
    bool Planning_process() override;
    
  public:
    std::unique_ptr<CarNormal> obs_car;
    double start_dis = 0.0; // 开始绕的距离
};